package benny_driving_ser.util;

/**
 * JSON工具
 * List<Object>转换成指定的JSON类型;
 */

import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

import benny_driving_ser.ObjectBean.UserInfoBean;
import benny_driving_ser.ObjectBean.UserOrderBean;

import atg.taglib.json.util.JSONArray;
import atg.taglib.json.util.JSONException;
import atg.taglib.json.util.JSONObject;

public class JSONUtil {
	private static JSONObject json;
	private static JSONArray jsons;
	/**
	 * 将对象转换成Json
	 * @param s 返回session的前缀
	 * @param object 需要转换的对象
	 */
	public static String object2json(String str, List<?> list) {
		json = new JSONObject();
		jsons = new JSONArray();
		String no = "{'"+str+"':[]}";
		if(list.size()!=0){
			for (Object object : list) {
				String[] attributes = ReflectUtil.getAttribute(object);
				String[] values = ReflectUtil.getFiledValues(object);
				try {
					JSONObject jo = new JSONObject();
					for (int i = 0; i < attributes.length; i++) {
						jo.put(attributes[i], values[i]);
					}
					jsons.put(jo);
					json.put(str, jsons);
				} catch (JSONException e) {
					e.printStackTrace();
				}
			}
//			System.out.println(json.toString());
			return json.toString();
		}else{
			return no;
		}
	}

	
	/**
	 * 测试代码
	 */
//	 public static void main(String[] args) {
//	 List<Object> list = new ArrayList<Object>();
//	 UserOrderBean u1 = new UserOrderBean();
//	 u1.setDriName("陈亚龙");
//	 u1.setExmil("200");
//	 u1.setFormId("3");
//	 list.add(u1);
//	
//	 UserOrderBean u2 = new UserOrderBean();
//	 u2.setDesPos("dddd");
//	 list.add(u2);
//	 object2json("full",list);
//	 
//	 list.clear();
//	 object2json("null",list);
//	 }

}
